Skip to content

Agent Permission System#13

Draft
google-labs-jules[bot] wants to merge 2 commits intoadvanced-workflowsfrom
agent-permissions-system
Draft

Agent Permission System#13
google-labs-jules[bot] wants to merge 2 commits intoadvanced-workflowsfrom
agent-permissions-system

Conversation

@google-labs-jules
Copy link
Copy Markdown

This PR implements a comprehensive permission control system for AI agents.

Key Features:

  1. Permission Modes:

    • Turbo: Tools run automatically (default).
    • Agent Decide: Agents can choose to run tools or ask permission.
    • Strict: All tools require user approval unless whitelisted.
  2. Configuration:

    • Global Whitelist/Blacklist per agent.
    • Per-tool permission overrides.
  3. Flow:

    • When a tool requires permission, the backend pauses execution and saves a tool_permission_request status message.
    • The frontend displays an "Approve/Deny" card in the chat.
    • Upon approval, the user clicks "Approve", the backend grants a temporary permission token, and the frontend resumes the agent.
    • The agent regenerates the tool call, which now passes the permission check.
    • The permission token is consumed upon successful execution.
  4. Architecture:

    • New backend/core/services/permission_service.py handles logic.
    • backend/core/agentpress/response_processor.py modified to intercept execution.
    • Frontend components added for config and chat interaction.

PR created automatically by Jules for task 1802877528802644627 started by @Logrui

- Added `PermissionService` backend logic for enforcing tool execution rules.
- Implemented `ask_permission` tool for agent autonomy.
- Updated `ResponseProcessor` to intercept tool calls in Strict mode or when agents ask for permission.
- Added Frontend UI for configuring permissions (whitelist/blacklist/modes).
- Added Frontend Chat UI for approving/denying permission requests.
- Updated System Prompt to inform agents of permission capabilities.
@google-labs-jules
Copy link
Copy Markdown
Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!


For security, I will only act on instructions from the user who triggered this task.

New to Jules? Learn more at jules.google/docs.

…ide/Strict modes

- Backend: Added `PermissionService` to enforce tool execution policies (Blacklist > Whitelist > Mode).
- Backend: Updated `ResponseProcessor` to intercept tool calls in 'Strict' mode or when `ask_permission` is used, pausing execution and saving a permission request message.
- Backend: Added `ask_permission` tool for agent autonomy.
- Backend: Created API endpoints for approving/denying permissions; approval triggers a "resume" (retry) flow.
- Frontend: Implemented `AgentPermissionsConfig` UI for managing permission modes, whitelists, blacklists, and per-tool overrides.
- Frontend: Added `PermissionRequestView` chat component for reviewing requests and resuming execution.
- Config: Updated system prompt to inform agents of their permission autonomy capabilities.
@vercel
Copy link
Copy Markdown

vercel Bot commented Dec 7, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
suna Error Error Dec 7, 2025 10:17pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants